The present invention relates to a storage virtualizer, in which a virtual storage unit is constituted by a part or a whole of a storage area of at least one physical storage unit and which is capable of accessing to a host computer, and a computer system using the storage virtualizer.
In a large scale computer system for mass-processing data, a plurality of storage units, e.g., magnetic disk units, are often connected to a host computer, e.g., server computer, by a proper connecting manner, e.g., fiber channels, so as to allow the host computer to flexibly use the storage units.
In the above described computer system, a multipath control method is widely used so as to improve failure resistance of the system. In the multipath control method, one or a plurality of storage units are connected to the host computer by a plurality of paths respectively. In a normal state, the host computer accesses via specific paths (regular paths) connected to the storage units. When failure occurs in the regular path, the host computer accesses via another path (sub path) connected to the storage unit.
By using the multipath control method, even if failure occurs in one path of the storage unit, the host computer can access to the storage unit via another path connected to the storage unit. Therefore, the failure resistance of the system against the path failure can be improved.
A conventional computer system capable of performing the multipath control is disclosed in Japanese Patent Gazette No. 2001-154929. The computer system (alternate path management system) is shown in FIG. 4, which is a block diagram. In FIG. 4, a device driver 8 of the host computer is connected to file units (storage units) C and D by an FC-AL (Fiber Channel-Arbitorated Loop) unit 4.
To clearly explain the computer system, a path structure of the computer system shown in FIG. 4 is shown in FIG. 5.
The FC-AL unit 4 is connected to the device driver 8 via paths 6 and 7. Paths 61 and 62, which are connected to the path 6 and the file units (storage units) C and D, are connected to the FC-AL unit 4; paths 71 and 72, which are connected to the path 7 and the file units (storage units) C and D, are connected to the FC-AL unit 4. Namely, the host computer can access to the file units C and D via the path 6 or 7. The paths 6, 61 and 62 shown by solid lines are regular paths, which are used in a normal state; the paths 7, 71 and 72 shown by dotted lines are sub paths.
When failure 33, which is shown as x in FIG. 5, occurs in the path 61 connected to the path 6 and the file unit C, the device driver 8 of the computer prohibits to access via the path (regular path) 61. Namely, it controls to access to the file unit C via the paths (sub paths) 7 and 71.
The device driver 8 repeatedly access-checks a part of storage area of the file unit C, via the paths 6 an 61, at regular time intervals. If an error is detected by the access check, the access via the path 61 is continuously prohibited. On the other hand, if no error is detected by the access check or the failure in the path 61 is resolved, the access to the file unit C is allowed via the regular paths 6 and 61 again.
Especially, in a computer system including a plurality of storage units, a virtual storage unit, which is constituted by combining storage areas of physical storage units and recognized as a storage area by a host computer, was proposed.
An example of the computer system employing the virtual storage unit is disclosed in Japanese Patent Gazette No. 2003-44421. The computer system is shown in FIG. 6. A plurality of node units (host computers) 1 and a plurality of storage units 2 are connected by a network switch 3. A network processor 31 of the network switch 3 combines a part or a whole of a storage area of each storage unit 2 so as to constitute a virtual storage unit (virtual common disk) 5. The node units 1 are capable of accessing to the virtual storage unit 5.
By the virtualization of the storage, a user can optionally produce the virtual storage unit on the basis of uses of the host computer. By accessing to the virtual storage unit, the host computer can use the physical storage units without regard to storage capacities and connection types of the physical storage units.
The multipath control may be applied to the virtual storage unit.
A conventional computer system, which provides a virtual storage unit to a host computer performing the multipath control, is shown in FIG. 7. The computer system comprises: a storage virtualizer 10 having a regular target 10a and a sub target 10b; a host computer 11 being connected to the targets 10a and 10b by a regular path 12a and a sub path 12b; and physical storage units X and Y being respectively connected to the storage virtualizer 10 by regular paths and sub paths (16a, 16b) and (17a, 17b).
The storage virtualizer 10 produces one or a plurality of virtual storage units A and B, which are constituted by combining a part or a whole storage area of one or a plurality of physical storage units X and Y. The host computer 11 is capable of accessing to the virtual storage units A and B via the regular target 10a and the sub target 10b. 
In FIG. 7, the storage virtualizer 10 produces the virtual storage unit A by combining a part al (upper part in FIG. 7) of the physical storage unit X and a part a2 (upper part in FIG. 7) of the physical storage unit Y; the storage virtualizer 10 produces the virtual storage unit B by combining a part b1 (lower part in FIG. 7) of the physical storage unit Y and a part b2 (lower part in FIG. 7) of the physical storage unit X. The host computer 11 is capable of accessing to the virtual storage units A and B via the targets 10a and 10b. Note that, the structure of the virtual storage units, which is produced by the storage virtualizer 10, is not limited to the example shown in FIG. 7. For example, a part or a whole storage areas of many physical storage units, which are connected to the storage virtualizer 10, may be optionally combined to constitute a virtual storage unit.
In FIG. 7, the paths and access routes shown by solid lines indicate the regular paths and regular access routes; the paths and access routes shown by dotted lines indicate the sub paths and sub access routes. As shown in FIG. 7, connecting means (14a, 14b) and (15a, 15b) make the regular paths 16a and 17a of the physical storage units X and Y correspond to the regular target 10a and make the sub paths 16b and 17b correspond to the sub target 10b. Namely, when the host computer 11 accesses via the regular path 12a and the regular target 10a, the host computer 11 real-accesses to the physical storage unit X and Y via the connecting means 14a and 15a corresponding to the target 10a and the regular paths 16a and 17a. On the other hand, when the host computer 11 accesses via the sub path 12b and the sub target 10b, the host computer 11 real-accesses to the physical storage unit X and Y via the connecting means 14b and 15b corresponding to the target 10b and the sub paths 16b and 17b. 
Note that, in the specification of the present application, an access to a physical storage unit is called “real access” so as to distinguish from an access to a virtual storage unit.
In the computer system shown in FIG. 7, the host computer 11 (a device driver 11a) is capable of accessing to the virtual storage units A and B, without regarding as “virtual” storage units, as well as the access to the file units (physical storage units) C and D shown in FIG. 5.
However, the conventional computer system shown in FIG. 7, which virtualizer the storage units and performs the multipath control, has following problems.
In FIG. 7, when failure 32, which is shown as x, occurs in the path 16a connecting the physical storage unit X to the storage virtualizer 10, if the host computer 11 accesses to the storage area a1 of the virtual storage unit A via the regular path 12a (regular target 10a), an error signal is sent to the host computer 11 due to the failure 32 in the path 16a. 
Therefore, the device driver 11a of the host computer 11 recognizes that failure 34, which is shown as x, occurs in the access route to the virtual storage unit A via the path 12a (target 10a). Then, the access to the virtual storage unit A via the path 12a is prohibited, but the access to the virtual storage unit A via the sub path 12b (target 10b) is allowed.
The device driver 11a access-checks a part of the storage area of the virtual storage unit A via the path 12a at regular time intervals. If an error is detected by the access check, the access via the path 12a is continuously prohibited. On the other hand, no error is detected by the access check, the device driver 11a recognizes that the failure 34 in the path 12a is resolved and allows the access to the file unit C via the regular path 12a again.
Since the device driver 11a of the host computer 11 recognizes the virtual storage unit A as one storage unit, a part of the storage area a2 may be assigned as an area to be access-checked. In this case, the access to the storage area a2 of the virtual storage unit A is performed via the path 17a, and the access is not performed via the path 16a, in which the failure 32 actually occurs, so that the access can be normally performed. By normally performing the access check, the device driver 11a judges that the failure 34 recognized by the device driver 11a has been resolved. Then, the access to the virtual storage unit A is performed via the regular path 12a. 
However, if the host computer 11 accesses to the storage area a1 of the virtual storage unit A via the path 12a, the error occurs again due to the failure 32 in the path 16a. Therefore, the host computer 11 and the device driver 11a repeat the above described action. Namely, switching the path between the regular path 12a and the sub path 12b is repeated, so that the host computer 11 cannot rapidly access to the virtual storage unit A.